Vehicle mode determination

ABSTRACT

An operating mode is determined for a vehicle according to respective control states of each of a plurality of vehicle subsystems that include braking, steering, and propulsion. The operating mode is one of manual control, partial manual control, and no manual control. A route for the vehicle is determined based in part on the operating mode.

BACKGROUND

Road design may involve considerations of vehicle density, speed, andthe like. Further roads may be maintained (or not) in different ways,and/or may have characteristics (e.g., grade, curves, width, etc.)dictated by geographic and/or topographic features. Different roads,therefore, may have different characteristics.

DRAWINGS

FIG. 1 illustrates an example vehicle system for determining a routebased at least in part on a vehicle mode of operation and/or a vehiclemode of operation based at least in part on a route.

FIG. 2 is a diagram of an example process for determining a route basedat least in part on a mode of operation.

FIG. 3 is a diagram of an example process for determining a vehicle modeof operation based at least in part on a route.

DESCRIPTION Introduction

FIG. 1 is a block diagram of an example vehicle system 100. The vehicle101 may include a computer 105 communicatively coupled to acommunications bus 125, e.g., communicating with various vehicle 101components such as electronic control units (ECUs) to receive data fromand/or control vehicle 101 subsystems such as steering, brakes,propulsion, etc. The computer 105 may be connected to sensors 115 and ahuman machine interface (HMI) 120 through the communications bus 125.The computer 105 may communicate with other vehicles using acommunications protocol such as is known, e.g., dedicated short rangecommunications (DSRC), etc. The computer 105 may further receive andprovide data relating to operating the vehicle 101 via the vehiclecommunications bus 125, and yet further may communicate via a network130 with one or more remote servers 140. The server 140 typicallyincludes or is communicatively coupled to a data store 145.

The vehicle 101 computer 105 may be programmed to determine a routeand/or a mode of operation based at least in part on the route. Thecomputer 105 may select the route based on operator input to a vehiclesystem, e.g., a navigation system, the HMI 120, etc., and/or thecomputer 105 and the server 140 may predict a route based on data storedin the data store 145 and/or the computer 105 memory, e.g., route datafrom prior travel, routes preferred by the operator, etc. Based on theselected route, typically including a consideration of characteristicsof the route, such as types of roads, likely traffic density, etc., thecomputer 105 may determine the mode of operation for the vehicle 101.

A mode of operation is selected from a plurality of possible modes. Forexample in a fully autonomous mode, the vehicle 101 subsystems, e.g.,brake systems, propulsion systems (e.g., throttle in a vehicle 101powered by an internal combustion engine), and steering systems, etc.,are controlled by the computer 105. In a partially autonomous mode, thecomputer 105 controls some, but not all, of the vehicle 101 subsystems,e.g., the computer 105 may control braking but not steering andpropulsion, to take just one example. In a manual mode, vehicle 101subsystems are controlled by a human operator rather than by thecomputer 105. The computer 105 may select a mode of operation byassessing a plurality of factors associated with a route, e.g., one ormore characteristics of the selected route, e.g., whether the route isdesigned for autonomous and/or partially autonomous modes, etc.,preferences of the operator, etc. Additionally or alternatively, thevehicle 101 computer 105 may be programmed to determine a route based atleast in part on the mode of operation of the vehicle 101.

Example System

The vehicle 101 computer 105, which includes a processor and a memory asis known, may be communicatively coupled to, e.g., via a communicationsbus 125 or other known wired or wireless connections, or the computer105 may include, one or more ECUs, e.g., controllers or the likeincluded in the vehicle 101 for monitoring and/or controlling variousvehicle 101 components, e.g., an engine control unit, transmissioncontrol unit, etc. The bus 125 may be a controller area network (CAN)bus and/or any other suitable in-vehicle communications bus such asJASPAR, LIN, SAE J1850, AUTOSAR, MOST, etc. Electronic control units maybe connected to, e.g., a communications bus 125 such as a CAN bus, as isknown. The vehicle 101 may also include one or more electronic controlunits that receive and transmit diagnostic information such as anonboard diagnostics (OBD-II) information. Via the CAN bus, OBD-II,and/or other wired or wireless mechanisms, the computer 105 may transmitmessages to various devices in the vehicle 101 and/or receive messagesfrom the various devices, e.g., controllers, actuators, etc.Alternatively or additionally, in cases in which the computer 105actually comprises multiple devices, the CAN bus or the like may be usedfor communications between devices represented as the computer 105 inthis disclosure, e.g., various ECUs.

The computer 105 may transmit and/or receive messages using a pluralityof communication protocols, e.g., the computer 105 may include and/or becommunicatively coupled to one or more transceivers as are known forproviding such communications. For example, the computer 105 maytransmit and/or receive messages using vehicle-to-vehicle protocols(V2V) such as Dedicated Short Range Communication (DSRC), cellularmodem, and short-range radio frequency.

The computer 105 may further communicate with a network 130 that extendsoutside of the vehicle 101, e.g., communicating with the server 140. Thenetwork 130 may include various wired and/or wireless networkingtechnologies, e.g., cellular, Bluetooth, wired and/or wireless packets,etc. The network 130 may have any suitable topology. Examplecommunication networks include wireless communication networks (e.g.,using Bluetooth, IEEE 802.11, etc.), local area networks (LAN), and/orwide area networks (WAN), including the Internet, providing datacommunication services.

The computer 105 memory may store map data, environmental data, andprogram instruction for determining one or more modes of operation ofthe vehicle 101. Additionally or alternatively, the computer 105 maysimilarly determine a route by evaluating the received environmentaldata and selected mode of operation, e.g., selected by operator input,etc., as explained further below.

Environmental data includes any environmental condition, e.g., weatherconditions, traffic density, road incline, etc. The computer 105 mayreceive environmental data from sensors 115 and/or the server 140, e.g.,such as GPS (global positioning system) data, weather conditions (suchas outdoor temperature, presence or absence of precipitation, etc.) roadfriction, traffic density (e.g., a number of vehicles within a length,e.g., 100 meters, of a road), road grade, etc. Some of the foregoingcould also be indicated in the stored map data.

Further, an operator of the vehicle 101 may select a route to aspecified destination (e.g., street address mapped to GPS coordinates inthe map data). The computer 105 may compare the selected route, e.g., toan operator's home, to possible vehicle 101 modes of operation stored inthe computer 105 memory. For example, the computer 105 may identify amode of operation that was used in the past by the operator to traversethe selected route home and/or could evaluate environmental data toselect a mode of operation.

Various modes of operation are possible in the context of the system100. For example, the vehicle 101 may include one or more subsystemsthat the computer 105 is programmed to control via messages on thecommunications bus 125. Typically, such subsystems include propulsion(e.g., a powertrain in a vehicle 101 with an internal combustionengine), braking, and steering. Electronic control units (ECUs) or thelike such as are known may be included in the vehicle 101 subsystems,and may receive messages from the computer 105 via the bus 125 tocontrol the vehicle 101 subsystems, e.g., to accelerate the vehicle 101,apply break pressure, change a steering angle, etc. Based on a controlstate of one or more of the vehicle 101 subsystems, a mode of operationmay be determined. For example, a vehicle 101 subsystem and/or featuresthereof may be assigned a control state of either “manual” or“automatic.” In a manual control state, the vehicle 101 subsystem iscontrolled by a human operator. In the automatic control state, thevehicle 101 subsystem is controlled by the computer 105, i.e., accordingto execution of program instructions to provide messages via the bus 125to an ECU associated with the subsystem.

A mode of operation may be determined according to respective controlstates of one, some, all, or none of a set of vehicle 101 subsystems.For example, a vehicle 101 mode of operation may be fully autonomous,such that the computer 105 operates as a virtual driver to control allvehicle 101 subsystems related to propulsion, braking, and steering(i.e. control states for all vehicle 101 systems are “autonomous.” Amode of operation may be partially autonomous, such that some but notall subsystems related to propulsion, braking, and steering arecontrolled by the computer 105 and some but not all are controlled bythe operator, i.e., one or more control states are “manual,” and one ormore control states are “automatic.” A mode of operation may be manual,i.e., subsystems for each of propulsion, braking, and steering have“manual” control states.

The computer 105 may determine a vehicle 101 mode of operation for aselected route by evaluating map data and/or received environmentaldata, e.g., data from vehicle 101 sensors 115 and/or data received fromthe server 140, e.g., regarding precipitation intensity, type, etc., forone or more routes or route segments. The computer 105 may assignnumeric values, i.e., scores or the like, to map data and theenvironmental data, e.g., such that precipitation conditions maycorrespond to a value, e.g., according to an intensity and/or type ofprecipitation, e.g., snow, rain, etc., a type of road may be assigned avalue or score, e.g., interstate highway versus county road, versus dirtroad, etc., traffic intensity may be assigned a value, etc. Known mapdata includes numeric classifications relating to road types that can becorrelated with scores for a particular mode of vehicle 101 operation.Examples of such known map data include:

RoadName

FunctionClass

FromNode0—from links of the route, so we know the direction on the linkwe will expect to travel

LanesFrom0

LanesFrom1

TMCCode/Other traffic

Length (cm/m)

Height

Node0Position

Node1Position

ShapePoints

ExpectedSpeed

ADASSpeed

SpeedHistory

OneWay

RoadType

StopSign position (distance from 0)

TrafficLight position (distance from 0)

Elevation

Grade/Slope

HOV

Traffic Info

TPEG

Traffic light status

Surveillance

Traffic flow

Incident monitor

Traffic control

Speed limit control

Traffic light control.

Examples of known traffic data includes data according to the TrafficProtocol Experts Group (TPEG) and traffic light status data, e.g., asmay be provided by V2V communications and/or from server 140. Trafficdata can also include data obtained from surveillance cameras or thelike, e.g., in communication with the server 140, to indicate trafficflow on a route segment, e.g., a number of vehicles passing a point perunit of time, e.g., per minute, as well as report on incidents such ascollisions, temporary obstacles, lane closures, etc. Further, thecomputer 105 may receive, e.g., from the server 140, information aboutchanging traffic control, e.g., speed limits, traffic light timing, etc.

Further, server 140 may provide traffic data that may be used todetermine and/or modify a route, as is known; moreover, as disclosedherein, traffic data may be used to score a route or route segment for aparticular mode of operation.

In any case, the values (i.e., scores) may then be used to compute atotal operating score for a route. The total score may be used todetermine which of the routes to actuate for a selected mode ofoperation and/or which of the mode of operations of the vehicle 101 toactuate for a selected route, e.g., based on pre-determined thresholdvalues. Accordingly, a score to determine an operating mode for a routeor route segment or to select a route or route segment based on anoperating mode may be based on one, two, or more factors, e.g., a roadtype, traffic conditions, weather and other environmental states, roadcondition (e.g., potholes, ice, etc.), etc. As is known, routedetermination can be performed by evaluating route segments according toan objective function or functions. The operating score for a route canbe provided as an input to the objective function(s). For example, theoperating score may be a constraint on a route planning algorithm, e.g.,only routes and/or route segments having an operating score above apredetermined minimum threshold may be selected. Alternatively, theroute determination could be programmed to include maximizing theoperating score, possibly subject to other constraints (e.g., time totravel route, type of road acceptable to vehicle 101 user, etc.).

The computer 105 may select a mode of operation according to a historyfor a selected route, as stated above, but also may evaluateenvironmental data for the selected route. For example, the computer 105may determine to use full autonomous mode on the selected route duringnormal weather conditions (e.g., dry, temperature above freezing, fulldaylight available) and on an appropriate road (e.g., few curves,relatively flat grade, etc.), but may select partial autonomous controlduring certain abnormal conditions, e.g., lack of daylight and/or rain.Manual control could be required under yet further conditions, e.g.,extreme traffic density, severe precipitation, very curvy road, etc.

Additionally or alternatively, the computer 105 may be programmed todetermine a route based on a selected mode of operation. Theenvironmental data and the selected mode of operation may be evaluatedby the computer 105 to determine a route.

For example, if a possible route to a selected destination has anabnormally high traffic density, the computer 105 may identify a secondroute to the destination having a lower traffic density and in which thevehicle 101 computer may therefore use the fully autonomous mode ofoperation.

For further example, if a first route is selected by the vehicle 101operator and the operator also selects a fully autonomous mode ofoperation, however, the computer 105 determines that the vehicle 101subsystems should not operate in the fully autonomous mode of operation,the computer 105 may suggest alternative routes to the operator that arecompatible with the fully autonomous mode of operation.

The vehicle 101 may include a variety of sensors 115. The sensors 115may be linked to electronic control units or the like and operate withina CAN bus protocol or any other suitable protocol, as described above.The sensors 115 typically may both transmit and receive data such asmeasurements, commands, etc. The sensors 115 may communicate with thecomputer 105 or other electronic control unit via e.g., the CAN busprotocol, to process information transmitted from or received by thesensors 115. The sensors 115 may communicate with the computer 105 orother electronic control unit via any suitable wireless and/or wiredmanner. The sensors 115 may include, by way of example and notlimitation, any assortment of a camera, a RADAR unit, a LADAR (alsoknown as LIDAR) unit, a sonar unit, a motion detector, etc.Additionally, the sensors 115 may include a global positioning system(GPS) receiver that may communicate with a global positioning systemsatellite.

The vehicle 101 may include a human machine interface (HMI) 120. The HMI120 may allow an operator of the vehicle 101 to interface with thecomputer 105, with electronic control units, etc. The HMI 120 mayinclude any one of a variety of computing devices including a processorand a memory, as well as communications capabilities. The HMI 120 may bea portable computer, tablet computer, mobile phone, e.g., a smart phone,etc., that includes capabilities for wireless communications using IEEE802.11, Bluetooth, and/or cellular communications protocols, etc. TheHMI 120 may further include interactive voice response (IVR) and/or agraphical user interface (GUI), including e.g., a touchscreen or thelike, etc. The HMI 120 may communicate with the network 130 that extendsoutside of the vehicle 101 and may communicate directly with thecomputer 105, e.g., using Bluetooth, etc. The computer 105 may promptthe operator of the vehicle 101 via the HMI 120 to choose a route or toactuate the vehicle 101 subsystems to traverse the route, as describedfurther below.

The server 140 may include or be communicatively coupled to a data store145. Data received from the computer 105 and/or the server 140 may bestored in the data store 145 for later retrieval. The data store 145 mayinclude environmental data, routes, and modes of operation to be used bythe server 140 to determine one of a route and a mode of operation forreceipt by the vehicle 101 computer 105.

Example Process

FIG. 2 is a diagram of an example process 200 for determining a vehicle101 route based at least in part on a current mode of vehicle 101operation. The process 200 may be executed by the vehicle 101 computer105.

The process 200 begins in a block 205 in which the vehicle 101 computer105 determines the current vehicle 101 location, e.g., in a knownmanner. For example, the vehicle 101 computer 105 may receivemeasurements from the sensors 115, e.g., according to geo-coordinatesutilizing GPS technology such as is known, etc., to determine thevehicle 101 location.

Next, in a block 210, the vehicle 101 determines a route end point,e.g., a user-specified destination and/or a destination predicted ordetermined by the computer 105, e.g., based at least in part on thevehicle 101 location and/or a history of driving from the currentlocation of the vehicle 101 to the predicted destination, possiblytaking into account time of day, day of week, etc.

Next, in a block 215, the vehicle 101 computer 105 determines thecurrent vehicle 101 mode of operation, e.g., according to respectivecontrol states of vehicle 101 subsystems. For example, a memory of thecomputer 105 may store an indicator concerning whether the vehicle 101is controlled fully autonomously, partially autonomously, and/ormanually and/or the computer 105 may store respective control stateindicators for vehicle 101 subsystems. The vehicle 101 mode of operationcould be determined by user input, e.g., a setting via the HMI 120, by adefault (e.g., manual), or in some other manner, and the computer 105could store the setting and/or be executing programming to carry outfull or partial control of the vehicle 101 (e.g., control of some or allvehicle 101 subsystems such as propulsion, steering, and braking).

Next, in a block 220, the vehicle 101 computer 105 identifies possibleroutes to traverse from the current location of the vehicle 101 to thedetermined destination. In general various manners of routedetermination, such as are known, may be used for determining one ormore routes for a vehicle 101.

Next, in a block 225, the vehicle 101 computer 105 determines which ofthe identified possible routes are acceptable routes for the determinedmode of operation. In determining whether a route is acceptable for amode of operation, the computer 105 may consider current vehicle 101conditions, e.g., fuel level, tire pressure, etc., environmental data,e.g., presence or absence of precipitation, outside temperature, etc.,road conditions and/or characteristics, e.g., bumpiness, estimated roadfriction, number of lanes, curviness (e.g., number of degrees of turningrequired over a predetermined distance), etc.

In general, in identifying acceptable routes, the computer 105 mayconsider the availability and accuracy of sensors 115. For example,fully autonomous and/or partial autonomous modes may demand higherdegrees of accuracy, or may require availability of one or more sensors115 or other equipment (e.g., a cellular modem or the like to providecommunication with, and allow receipt of data from, the server 140,ability for Dedicated Short Range Communications and/or othervehicle-to-vehicle communications, etc.). Equipment that may be soevaluated includes front looking camera, a rear looking camera, a sidelooking camera, front radar, back radar, side radar, a front ultrasonicsensor, a rear ultrasonic sensor, lidar, GPS, and/or a modem or othercommunications device, and the computational capability of the computer105 (e.g., amount of memory, processing speed, etc.).

Additionally or alternatively, in the block 225, the vehicle 101computer 105 may determine that there are no available routes based onthe current location, the specified destination, and the current mode ofoperation. If the vehicle 101 computer 105 determines that there are noavailable routes that correspond to the computer 105 received inputs,the process 200 proceeds to a block 240 described further below.

The computer 105 may rank the determined acceptable routes for thedetermined mode. For example, the routes may be ranked according to ascore or the like in which more acceptable routes, i.e., routes bettersuited to the determined mode, are ranked ahead of the less acceptableroutes, e.g., as determined by the score. For example, the computer 105may display a ranking based on routes ordered alphabetically, based on afrequency of the operator traversing the route, based on time of day,etc. The vehicle 101 computer may display the ranking to the operator,e.g., via the HMI 120, under a “Favorites” heading, for example.

For example, if a first route is less suitable for fully autonomousdriving than a second route, and the operator has selected a fullyautonomous mode of operation, the computer 105 may promote in rank thesecond route over the first route. For further example, if a first routehas greater traffic than a second route, the computer 105 may promotethe second route over the first route.

Next, in a block 230, either of the vehicle 101 computer 105 or thevehicle 101 operator selects the route. The operator may select theroute by input to the HMI 120. The computer 105 may select the route byreceiving permission to traverse a route selected by the computer 105and/or selecting a route without operator input, e.g., according to ahighest-ranked route for the current mode of operation. For example, thecomputer 105 may be programmed to select the highest-ranked route whenthe operator selects the full autonomous mode of operation.

Next, in a block 235, the vehicle 101 executes the route determined bythe process 200, depending on the current mode of operation. Forexample, in a manual mode, the computer 105 could cause the route to bedisplayed, provide turn-by-turn navigation instructions as are known,etc. In an autonomous or semi-autonomous mode, the computer 105 couldsend and receive data via the communications bus 125 and to and from thevehicle 101 ECUs to control one or more of the vehicle 101 subsystems,including propulsion, steering, and/or braking, to cause the vehicle 101to travel the route.

Next, or following the block 220, the vehicle 101 computer 105, in theblock 240, determines if the process 200 should continue. For example,the process 200 may end if the operator of the vehicle 101 ends theprocess 200, if the vehicle 101 is switched off, etc. In any case, ifthe process 200 should not continue, the process 200 ends following theblock 240. Otherwise, the process 200 returns to the block 205;alternatively, after the block 240, the computer 105 could proceed toexecute the process 300, described below. When the process 200 returnsto the block 205 for a second or subsequent iteration, a route of thevehicle 101 accordingly may be modified or replaced according to achange in the vehicle 101 mode of operation.

FIG. 3 is a diagram of an example process 300 for determining a vehiclemode of operation based at least in part on a route. The process 300begins in a block 305, in which the computer 105 determines a locationof the vehicle 101, e.g., as described above.

Next, in a block 310, the computer 105 determines a route beingtraversed or selected to be traversed by the vehicle 101. For example,the computer 105 could receive input from an operator concerning adestination, could determine a destination according to historical datacompared to time of day, day of week, location, etc., as describedabove, the computer 105 could receive input concerning a specified routefrom the operator, etc. As discussed above, various ways of determiningand selecting a vehicle 101 route are known.

Next, in a block 315, the computer 105 determines a current operatingmode of the vehicle 101, e.g., as described above, the computer 105memory may store a setting or indicator concerning a current operatingmode, a vehicle 101 may default to an operating mode, e.g., manual, onbeing powered on, etc.

Next, in a block 320, the computer 105 determines whether to change theoperating mode of the vehicle 101. For example, as discussed above, thecomputer 105 may determine programming to score a suitability oracceptability of a route for an operating mode. Accordingly, if suchscore exceeds a predetermined threshold, then the computer 105 maydetermine not to change the current operating mode. However, if suchscore falls below a predetermined threshold and/or a route is otherwisedetermined to be not acceptable for an operating mode, then the computer105 may determine to change the current operating mode.

In a block 325, which may follow the block 320, the computer 105 changesthe vehicle 101 operating mode at least in part based on an operatingmode determined to be acceptable for the selected route. For example,the computer 105 could be programmed to select an operating mode inwhich the vehicle 101 performs at a highest level of autonomy possiblefor the route. For example, the vehicle 101 could have been operating ina full autonomous mode, wherein the selected route is suitable for atmost a partial autonomous mode, e.g., in which the vehicle 101 computer105 controls vehicle 101 braking and propulsion, but not steering.Alternatively, the computer 105 could be programmed to select anoperating mode for which the route has a highest score. That is, theselected route could be acceptable, e.g., have a score for a partialautonomous mode above a predetermined threshold, but have a highestscore for a fully manual mode, in which case the computer 105 could beprogrammed to select the fully manual mode.

In the block 330, which may follow either of the blocks 324 325, thecomputer 105 determines whether the process 300 should continue, e.g.,in a manner described above with respect to the block 240 above.Accordingly, the process 300 may continue in the block 305, or end,according to the determination of the block 330. Thus, when the process300 visits the block 305 a second or subsequent time, the vehicle 101mode of operation may be changed according to changes in a route and/orchanges in operating conditions associated with a route.

CONCLUSION

Computing devices such as those discussed herein generally each includeinstructions executable by one or more computing devices such as thoseidentified above, and for carrying out blocks or steps of processesdescribed above. Computer-executable instructions may be compiled orinterpreted from computer programs created using a variety ofprogramming languages and/or technologies, including, withoutlimitation, and either alone or in combination, Java™, C, C++, VisualBasic, Java Script, Perl, HTML, etc. In general, a processor (e.g., amicroprocessor) receives instructions, e.g., from a memory, acomputer-readable medium, etc., and executes these instructions, therebyperforming one or more processes, including one or more of the processesdescribed herein. Such instructions and other data may be stored andtransmitted using a variety of computer-readable media. A file in acomputing device is generally a collection of data stored on a computerreadable medium, such as a storage medium, a random access memory, etc.

A computer-readable medium includes any medium that participates inproviding data (e.g., instructions), which may be read by a computer.Such a medium may take many forms, including, but not limited to,non-volatile media, volatile media, etc. Non-volatile media include, forexample, optical or magnetic disks and other persistent memory. Volatilemedia include dynamic random access memory (DRAM), which typicallyconstitutes a main memory. Common forms of computer-readable mediainclude, for example, a floppy disk, a flexible disk, hard disk,magnetic tape, any other magnetic medium, a CD-ROM, DVD, any otheroptical medium, punch cards, paper tape, any other physical medium withpatterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any othermemory chip or cartridge, or any other medium from which a computer canread.

With regard to the media, processes, systems, methods, etc. describedherein, it should be understood that, although the steps of suchprocesses, etc. have been described as occurring according to a certainordered sequence, such processes could be practiced with the describedsteps performed in an order other than the order described herein. Itfurther should be understood that certain steps could be performedsimultaneously, that other steps could be added, or that certain stepsdescribed herein could be omitted. In other words, the descriptions ofsystems and/or processes herein are provided for the purpose ofillustrating certain embodiments, and should in no way be construed soas to limit the disclosed subject matter.

Accordingly, it is to be understood that the above description isintended to be illustrative and not restrictive. Many embodiments andapplications other than the examples provided would be apparent to thoseof skill in the art upon reading the above description. The scope of theinvention should be determined, not with reference to the abovedescription, but should instead be determined with reference to claimsappended hereto and/or included in a non-provisional patent applicationbased hereon, along with the full scope of equivalents to which suchclaims are entitled. It is anticipated and intended that futuredevelopments will occur in the arts discussed herein, and that thedisclosed systems and methods will be incorporated into such futureembodiments. In sum, it should be understood that the disclosed subjectmatter is capable of modification and variation.

1. A method, comprising: identifying, as one of automatic and manual, respective control states of each of a plurality of vehicle subsystems that include braking, steering, and propulsion; determining a vehicle operating mode according to the control states, wherein the operating mode is manual control where all control states are manual, partial manual control where one control state is manual and one control state is automatic, and no manual control where all control states are automatic; and determining a route for the vehicle and operating the vehicle on the determined route based in part on the operating mode.
 2. (canceled)
 3. The method of claim 1, wherein determining the route includes identifying at least one route feature that is appropriate for at least one of the control states.
 4. The method of claim 3, wherein the at least one route feature includes a type of road, a type of terrain, a speed limit, a predicted traffic density, and one or more predicted vehicle maneuvers.
 5. The method of claim 1, further comprising traversing a portion of the route and then modifying the route according to a detected change in the operating mode.
 6. The method of claim 1, further comprising traversing a portion of the route and then changing the mode of operation.
 7. A system, comprising a computer having a processor and a memory, the memory storing instructions executable by the processor such that the computer is programmed to: identify, as one of automatic and manual, respective control states of each of a plurality of vehicle subsystems that include braking, steering, and propulsion; determine a vehicle operating mode according to the control states, wherein the operating mode is manual control where all control states are manual, partial manual control where one control state is manual and one control state is automatic, and no manual control where all control states are automatic; and determine a route for the vehicle and operate the vehicle on the determined route based in part on the operating mode.
 8. (canceled)
 9. The system of claim 7, wherein determining the route includes identifying at least one route feature that is appropriate for at least one of the control states.
 10. The system of claim 9, wherein the at least one route feature includes a type of road, a type of terrain, a speed limit, a predicted traffic density, and one or more predicted vehicle maneuvers.
 11. The system of claim 7, further wherein the computer is further programmed to, after a portion of the route is traversed, modify the route according to a detected change in the operating mode.
 12. The system of claim 7, further wherein the computer is further programmed to, after a portion of the route is traversed, changing the mode of operation.
 13. A system, comprising a computer having a processor and a memory, the memory storing instructions executable by the processor such that the computer is programmed to: identify a route for a vehicle; identify, as one of automatic and manual, respective control states of each of a plurality of vehicle subsystems that include braking, steering, and propulsion; based at least in part on the route, determine a vehicle operating mode according to the control states, wherein the operating mode is manual control where all control states are manual, partial manual control where one control state is manual and one control state is automatic, and no manual control where all control states are automatic; and operate the vehicle on the route.
 14. (canceled)
 15. The system of claim 13, wherein determining the route includes identifying at least one route feature that is appropriate for at least one of the control states.
 16. The system of claim 15, wherein the at least one route feature is determined according to a type of road, a type of terrain, a speed limit, a predicted traffic density, and one or more predicted vehicle maneuvers.
 17. The system of claim 13, further wherein the computer is further programmed to, after a portion of the route is traversed, modify the route according to a detected change in the operating mode.
 18. The system of claim 13, further wherein the computer is further programmed to, after a portion of the route is traversed, change the mode of operation. 